function edge_points = polygon_edges_N_division(V, N)
circle = [V; V(1, :)];
start_points = circle(1:end-1, :);
end_points = circle(2:end, :);
proportion = linspace(0, 1, N+1);
proportion = proportion(1:end-1);
edge_points = zeros(N*size(V,1), 2);
k = 1;
for i = 1:size(start_points, 1)
    differences = end_points(i, :) - start_points(i, :);
    segmentPoints = start_points(i, :) + proportion' * differences;
    edge_points(k:k+N-1,:) = segmentPoints;
    k = k+N;
end
cut = 1:N:size(edge_points,1);
edge_points(cut,:) = [];
end